package com.atbeijing.bigdata.spark.core.rdd.operator.action

import org.apache.spark.{SparkConf, SparkContext}

object Spark09_Oper_Action {

    def main(args: Array[String]): Unit = {

        val conf = new SparkConf().setMaster("local[*]").setAppName("ActionOperator")
        val sc = new SparkContext(conf)

        // TODO 算子 - 行动
        val rdd = sc.makeRDD(
            List[Int](),2
        )
        val user = new User()

        // TODO : Task not serializable
        // 闭包
        // spark作业执行之前，会判断数据准备中，是否存在闭包，检测闭包中的对象是否能够序列化
        // 这个检测功能称之为闭包检测
        rdd.foreach(
            num => {
                println( user.age + num )
            }
        )

        sc.stop()

    }
    class User {
        var age : Int = 30
    }
}
